export function toFixed (val, decimalLen = 2) {
  if (isNaN(val)) {
    return val
  }
  return Number(val).toFixed(decimalLen)
}

/**
 * 千分位，格式化金额，整数部分用英文逗号分割
 * @param {Number|String} money
 * @param {Number} decimalLen 小数部分的长度，默认为原始数据的小数长度
 * @return {String}
 * */
export function formatMoney (money, decimalLen = 0) {
  if (isNaN(money)) {
    return money
  }
  if (decimalLen) {
    money = toFixed(money, decimalLen)
  }
  const list = String(money).split('.')
  const str = list[0].split('').reverse().join('')
  list[0] = str.match(
    /\d{1,3}-|\d{1,3}\+|\d{1,3}/g
  ).join(',').split('').reverse().join('')
  return list.join('.')
}

export function dictionariesFormat (list, label = 'label', value = 'value') {
  if (!list || !list.length) {
    return []
  }
  return list.map((item, index) => ({
    label: item[label],
    value: item[value],
    index
  }))
}

export function idCardOmit (value) {
  return value ? value.replace(/^(\d{4})\d+(\d{3})$/, '$1 **** **** $2') : ''
}

export function mobileOmit (value) {
  return value ? value.replace(/^(\d{3})\d+(\d{3})$/, '$1 **** $2') : ''
}
